package com.naiterui.ehp.bs.consult.vo;

import com.fasterxml.jackson.annotation.JsonInclude;
import com.naiterui.ehp.bp.bo.patient.PatientInquirerBO;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Builder;
import lombok.Data;

import java.util.Date;
import java.util.List;

/**
 * @author luao
 * @date 2021/2/26 3:29 下午
 **/
@Builder
@Data
@ApiModel("医生接诊记录")
public class DoctorConsultListVO {

    @ApiModelProperty(value = "视频问诊id")
    private Long videoConsultId;

    @ApiModelProperty(value = "病例id")
    private String caseId;

    @ApiModelProperty(value = "病情id")
    private String diseaseId;

    @ApiModelProperty(value = "患者Id")
    private Long patientId;

    @ApiModelProperty(value = "患者姓名")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private String patientName;

    @ApiModelProperty(value = "患者头像")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private String patientPhoto;

    @ApiModelProperty(value = "就诊人id")
    private Long inquirerId;

    @ApiModelProperty(value = "就诊人姓名")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private String inquirerName;

    @ApiModelProperty(value = "就诊人年龄")
    private String inquirerAgeStr;

    @ApiModelProperty(value = "问诊状态1:待接诊;2:进行中;3:中断;4:已取消;5:已完成;")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private Integer status;

    @ApiModelProperty(value = "会诊状态，0：未申请会诊，1：会诊待开始，2：受邀方总结，3：发起方总结")
    private Integer groupConsultStatus;

    @ApiModelProperty(value = "剩余确认时间")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private String remainderConfirmTime;

    @ApiModelProperty(value = "剩余确认时间(秒)")
    private Long remainderConfirmTimeSecond;

    @ApiModelProperty(value = "通话时长（格式化后的）")
    private String talkTime;

    @ApiModelProperty(value = "咨询费")
    private Integer price;

    @ApiModelProperty(value = "房间号")
    private Integer roomId;

    @ApiModelProperty(value = "最后状态改变的时间(时间戳)")
    private Long endTime;

    @ApiModelProperty(value = "性别")
    private Integer inquirerGender;

    @ApiModelProperty(value = "图片消息标识1:有;2:没有")
    private Integer pictureMessageFlg;

    @ApiModelProperty(value = "发送病例标识1:已发送;2:未发送")
    private Integer sendCaseFlg;

    @ApiModelProperty(value = "发送处方标识1:已发送;2:未发送")
    private Integer sendRecomFlg;

    @ApiModelProperty(value = "病情描述")
    private String conditionDesc;

    @ApiModelProperty(value = "诊断信息")
    private List<String> diagnosis;

    @ApiModelProperty(value = "线下诊断信息")
    private String offlineDiagnosis;

    @ApiModelProperty(value = "就诊人信息")
    private PatientInquirerBO inquirerInfo;

    @ApiModelProperty(value = "线下就诊记录地址")
    private String offlineMedicalRecordUrl;

    @ApiModelProperty(value = "线上就诊记录地址")
    private String onlineMedicalRecordUrl;

    @ApiModelProperty("拒诊原因")
    private String refusalReason;

    @ApiModelProperty(value = "创建时间")
    private Date createdAt;

    @ApiModelProperty(value = "更新时间")
    private Date changedAt;
}
